package com.ubing.boot.notesforjava.test.leetcode;
//最长的字母序连续子字符串的长度 TODO
public class LongestContinuousSubstring {

//    字母序连续字符串 是由字母表中连续字母组成的字符串。
//    换句话说，字符串 "abcdefghijklmnopqrstuvwxyz" 的任意子字符串都是 字母序连续字符串 。

//    例如，"abc" 是一个字母序连续字符串，而 "acb" 和 "za" 不是。
//    给你一个仅由小写英文字母组成的字符串 s ，返回其 最长 的 字母序连续子字符串 的长度。
//    示例 1：
//    输入：s = "abacaba"
//    输出：2
//    解释：共有 4 个不同的字母序连续子字符串 "a"、"b"、"c" 和 "ab" 。
//            "ab" 是最长的字母序连续子字符串。

//    示例 2：
//    输入：s = "abcde"
//    输出：5
//    解释："abcde" 是最长的字母序连续子字符串。

    public static int longestContinuousSubstring(String s) {
        char[] chars = s.toCharArray();
        for (int i = 0; i < chars.length; i++) {
            int flag=1;
            int j=i;
            while(j< chars.length-1&&chars[j]+1==chars[j+1]){
                j++;
                flag++;
            }
            chars[i]=(char) flag;
        }
        int max=0;
        for (int i = 0; i < chars.length; i++) {
//            System.out.println((int) chars[i]);
            if((int) chars[i]>max) max=chars[i];
        }
        return  max;
    }

    public static void main(String[] args) {
        System.out.println(longestContinuousSubstring("abcde"));
    }
}
